===on ubuntu 16.04===
 #root user
 apt-get update
 apt-get install -y vim byobu openvpn aptitude
 apt-get install -y git cmake build-essential curl libcurl4-openssl-dev libssl-dev uuid-dev libffi-dev python-dev python-pip #default is 2.7
 pip install --upgrade pip
 pip install apscheduler multiprocessing psutil pymodbus

 pip install azure-storage 
 #or to build azure-storage
 #cd ~
 #git clone https://github.com/Azure/azure-storage-python.git
 #cd ./azure-storage-python
 #python setup.py install 

 pip install azure
 #or to build azure-sdk-for-python
 #cd ~
 #git clone https://github.com/Azure/azure-sdk-for-python.git
 #cd azure-sdk-for-python
 #python setup.py install
 
 cd ~
 git clone --recursive https://github.com/Azure/azure-iot-sdk-python.git 
 cd azure-iot-sdk-python/build_all/linux
 ./setup.sh
 ./build.sh



===web interface for openvpn===
 apt-get install openvpn apache2 php7.0-mysql mysql-server php7.0 nodejs unzip git wget sed npm curl
 npm install -g bower
 ln -s /usr/bin/nodejs /usr/bin/node

 cd ~
 git clone https://github.com/Chocobozzz/OpenVPN-Admin openvpn-admin
 cd openvpn-admin
 ./install.sh www_base_dir web_user web_group


===openvpn===
https://www.robertkehoe.com/2015/08/setup-openvpn-using-openwrt/